[XEN] replace shadow_* with paging_* in common code
authorTim Deegan <Tim.Deegan@xensource.com>
Fri, 20 Jul 2007 10:36:36 +0000 (11:36 +0100)
committerTim Deegan <Tim.Deegan@xensource.com>
Fri, 20 Jul 2007 10:36:36 +0000 (11:36 +0100)
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
xen/common/compat/kernel.c
xen/common/domctl.c
xen/common/grant_table.c
xen/common/kernel.c
xen/common/keyhandler.c
xen/common/memory.c
xen/common/page_alloc.c
xen/common/xenoprof.c
xen/include/asm-x86/config.h
xen/include/xen/paging.h [new file with mode: 0644]
xen/include/xen/shadow.h [deleted file]

index a655c9c227f3448855ae393373acddc82994d0a1..f3285fd14fc2b4316a0e48eb4954a1a22d6e99b5 100644 (file)
@@ -8,7 +8,6 @@
 #include <xen/errno.h>
 #include <xen/version.h>
 #include <xen/sched.h>
-#include <xen/shadow.h>
 #include <xen/nmi.h>
 #include <xen/guest_access.h>
 #include <asm/current.h>
index 91020dfa81958002a0516579d0f662c384848ff1..db7d55d9beab14be314bd9b23d92ec9cd6d69cdd 100644 (file)
@@ -20,7 +20,6 @@
 #include <xen/rcupdate.h>
 #include <xen/guest_access.h>
 #include <xen/bitmap.h>
-#include <xen/shadow.h>
 #include <asm/current.h>
 #include <public/domctl.h>
 #include <acm/acm_hooks.h>
index 74db8daff5c53532af485b0802030091842a7e33..8df6fb1cc167d6fdef3a0ea2cdde7d0494369295 100644 (file)
@@ -28,7 +28,6 @@
 #include <xen/iocap.h>
 #include <xen/lib.h>
 #include <xen/sched.h>
-#include <xen/shadow.h>
 #include <xen/mm.h>
 #include <xen/trace.h>
 #include <xen/guest_access.h>
index 0e675d3c4b691fd889d13bdceef306c72cda1e3b..117690461ff9f5a62b2d2068027e3cfcda65fc34 100644 (file)
@@ -10,7 +10,7 @@
 #include <xen/errno.h>
 #include <xen/version.h>
 #include <xen/sched.h>
-#include <xen/shadow.h>
+#include <xen/paging.h>
 #include <xen/nmi.h>
 #include <xen/guest_access.h>
 #include <asm/current.h>
@@ -217,7 +217,7 @@ DO(xen_version)(int cmd, XEN_GUEST_HANDLE(void) arg)
             fi.submap = 0;
             if ( VM_ASSIST(d, VMASST_TYPE_pae_extended_cr3) )
                 fi.submap |= (1U << XENFEAT_pae_pgdir_above_4gb);
-            if ( shadow_mode_translate(current->domain) )
+            if ( paging_mode_translate(current->domain) )
                 fi.submap |= 
                     (1U << XENFEAT_writable_page_tables) |
                     (1U << XENFEAT_auto_translated_physmap);
index 00f9afac0f2e8d2c98d4a1398a9c3a6020a9960a..e6e4d296ab137d8fc3390b0b4bc6bbeed02ceb80 100644 (file)
@@ -14,7 +14,6 @@
 #include <xen/rangeset.h>
 #include <xen/compat.h>
 #include <asm/debugger.h>
-#include <asm/shadow.h>
 #include <asm/div64.h>
 
 #define KEY_MAX 256
index 8fe4523582c21c429d58c7bf0595165c5ba177e8..311c5ae12341e4f768725f58d182fe335510ef04 100644 (file)
@@ -14,7 +14,7 @@
 #include <xen/perfc.h>
 #include <xen/sched.h>
 #include <xen/event.h>
-#include <xen/shadow.h>
+#include <xen/paging.h>
 #include <xen/iocap.h>
 #include <xen/guest_access.h>
 #include <xen/hypercall.h>
@@ -127,7 +127,7 @@ static void populate_physmap(struct memop_args *a)
 
         mfn = page_to_mfn(page);
 
-        if ( unlikely(shadow_mode_translate(d)) )
+        if ( unlikely(paging_mode_translate(d)) )
         {
             for ( j = 0; j < (1 << a->extent_order); j++ )
                 guest_physmap_add_page(d, gpfn + j, mfn + j);
@@ -236,7 +236,7 @@ static long translate_gpfn_list(
     if ( (d = rcu_lock_domain_by_id(op.domid)) == NULL )
         return -ESRCH;
 
-    if ( !shadow_mode_translate(d) )
+    if ( !paging_mode_translate(d) )
     {
         rcu_unlock_domain(d);
         return -EINVAL;
@@ -434,7 +434,7 @@ static long memory_exchange(XEN_GUEST_HANDLE(xen_memory_exchange_t) arg)
                 &gpfn, exch.out.extent_start, (i<<out_chunk_order)+j, 1);
 
             mfn = page_to_mfn(page);
-            if ( unlikely(shadow_mode_translate(d)) )
+            if ( unlikely(paging_mode_translate(d)) )
             {
                 for ( k = 0; k < (1UL << exch.out.extent_order); k++ )
                     guest_physmap_add_page(d, gpfn + k, mfn + k);
index 82bb5368bcb13129c4865ce5cb67dc7ccb1de6f1..1be4933ab962022850f36685f1412b0832127179 100644 (file)
 #include <xen/mm.h>
 #include <xen/irq.h>
 #include <xen/softirq.h>
-#include <xen/shadow.h>
 #include <xen/domain_page.h>
 #include <xen/keyhandler.h>
 #include <xen/perfc.h>
 #include <xen/numa.h>
 #include <xen/nodemask.h>
 #include <asm/page.h>
+#include <asm/flushtlb.h>
 
 /*
  * Comma-separated list of hexadecimal page numbers containing bad bytes.
index 9212156f02ad77e13ca1a7c1ffe0f0aef9c9b221..e25ad7bb30fdde1770067d25e074b2485bb7ae6b 100644 (file)
@@ -13,7 +13,7 @@
 #include <xen/guest_access.h>
 #include <xen/sched.h>
 #include <public/xenoprof.h>
-#include <asm/shadow.h>
+#include <xen/paging.h>
 
 /* Limit amount of pages used for shared buffer (per domain) */
 #define MAX_OPROF_SHARED_PAGES 32
@@ -397,7 +397,7 @@ static int add_passive_list(XEN_GUEST_HANDLE(void) arg)
     d->xenoprof->domain_type = XENOPROF_DOMAIN_PASSIVE;
     passive.nbuf = d->xenoprof->nbuf;
     passive.bufsize = d->xenoprof->bufsize;
-    if ( !shadow_mode_translate(current->domain) )
+    if ( !paging_mode_translate(current->domain) )
         passive.buf_gmaddr = __pa(d->xenoprof->rawbuf);
     else
         xenoprof_shared_gmfn_with_guest(
@@ -598,7 +598,7 @@ static int xenoprof_op_get_buffer(XEN_GUEST_HANDLE(void) arg)
         
     xenoprof_get_buffer.nbuf = d->xenoprof->nbuf;
     xenoprof_get_buffer.bufsize = d->xenoprof->bufsize;
-    if ( !shadow_mode_translate(d) )
+    if ( !paging_mode_translate(d) )
         xenoprof_get_buffer.buf_gmaddr = __pa(d->xenoprof->rawbuf);
     else
         xenoprof_shared_gmfn_with_guest(
index 25ade56c006d95874cd74c57cb767d4532735180..a9bfc7076eca3547fe44b3208a5c9717c6b47915 100644 (file)
@@ -17,7 +17,7 @@
 
 #define CONFIG_X86 1
 #define CONFIG_X86_HT 1
-#define CONFIG_SHADOW 1
+#define CONFIG_PAGING_ASSISTANCE 1
 #define CONFIG_SMP 1
 #define CONFIG_X86_LOCAL_APIC 1
 #define CONFIG_X86_GOOD_APIC 1
diff --git a/xen/include/xen/paging.h b/xen/include/xen/paging.h
new file mode 100644 (file)
index 0000000..54ab4ad
--- /dev/null
@@ -0,0 +1,26 @@
+
+#ifndef __XEN_PAGING_H__
+#define __XEN_PAGING_H__
+
+#include <xen/config.h>
+
+#if defined CONFIG_PAGING_ASSISTANCE
+
+#include <asm/paging.h>
+#include <asm/p2m.h>
+
+#elif defined CONFIG_SHADOW
+
+#include <asm/shadow.h>
+
+#define paging_mode_translate(d)  shadow_mode_translate(d)
+
+#else
+
+#define paging_mode_translate(d)              (0)
+#define guest_physmap_add_page(d, p, m)       ((void)0)
+#define guest_physmap_remove_page(d, p, m)    ((void)0)
+
+#endif
+
+#endif /* __XEN_PAGING_H__ */
diff --git a/xen/include/xen/shadow.h b/xen/include/xen/shadow.h
deleted file mode 100644 (file)
index 7f45742..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-
-#ifndef __XEN_SHADOW_H__
-#define __XEN_SHADOW_H__
-
-#include <xen/config.h>
-
-#ifdef CONFIG_SHADOW
-
-#include <asm/shadow.h>
-
-#else
-
-#define shadow_drop_references(d, p)          ((void)0)
-#define shadow_sync_and_drop_references(d, p) ((void)0)
-
-#define shadow_mode_translate(d)              (0)
-
-#define guest_physmap_add_page(d, p, m)       ((void)0)
-#define guest_physmap_remove_page(d, p, m)    ((void)0)
-
-#endif
-
-#endif /* __XEN_SHADOW_H__ */